This invention relates generally to techniques for remote monitoring and control of equipment or devices over computer networks. More particularly, it relates to inexpensive, scalable, and robust techniques for monitoring and controlling many different types of remote equipment over computer networks from one or more locations.
There are many devices that need to be monitored or controlled remotely, such as security system devices and industrial equipment. In addition, many other devices, such as environmental controls and various appliances and consumer electronic equipment, would be more convenient to use if they could be remotely controlled or monitored over computer networks. Remote monitoring could also provide fast and inexpensive diagnosis of device malfunction by manufacturers. Present techniques for providing such remote control and, monitoring, however, are very expensive to implement and are only practical for large industrial applications. In addition, present techniques typically require complicated installation and maintenance, further adding to the overall cost.
U.S. Pat. No. 5,790,977 to Ezekiel discloses a technique providing access to an instrument over a computer network by a remote host system. According to the technique, the instrument stores control and data acquisition software (such as a Java applet), which is sent over the computer network to the remote host system. The software is then executed on the remote host system (e.g., by a Java-enabled http browser) and enables the remote host system to generate and send to the instrument various data acquisition control signals. In response, the acquisition of data by the instrument is controlled, and acquired data may be sent over the computer network to the remote host system. The software on the remote host provides a graphical user interface that allows the user to interact with the instrument. The interface displays acquired data from the instrument as well as virtual instrument controls. This method of remote access, however, is expensive to implement and maintain. A conventional implementation of the disclosed technique would require an instrument that has a full scale web server including a powerful microprocessor, large memory and disk storage capacity, network hardware and software, powerful operating system, and custom application hardware and software to provide communications interfacing with the instrument. In addition, the server needs expensive custom hardware and software for use with the particular instrument. This solution, therefore, is not practical for low-cost instruments or devices.
One prior art solution shown in FIG. 1A involves the use of a web server gateway machine 20 at the remote location. The web server machine 20 is a full scale workstation including a powerful microprocessor, large memory and disk storage capacity, network hardware and software, powerful operating system, and custom application hardware and software to provide communications interfacing with various devices at the remote location. The remote devices 22 are provided with separate application specific integrated circuit (ASIC) chips 24 that interface the device control circuitry hardware 26 with a lightweight local communication link 28 to the server 20. Clients 30 are connected to the server 20 via a high performance computer network 32. Information for control and monitoring is thus communicated between the clients 30 and the devices 22 via the network 32, server 20, and lightweight local link 28. This system has the disadvantage that the powerful gateway server machine 20 can be very expensive to purchase, install, and maintain. The system architecture of this approach also has the disadvantage that it is vulnerable to failures in multiple points: at both the server gateway 20 and at the ASIC chip 24 embedded in each device. In addition, because the gateway server 20 provides the single point of access to all the devices 22 at the remote location, access to all the devices is lost when the gateway server fails. This particular disadvantage could be avoided by embedding the gateway server itself in each device. Such a solution, however, is very expensive since it requires a complex and expensive server for each device.
In view of the above, it is an object of the present invention to provide an improved apparatus and method for providing remote controlling and monitoring of a device over a computer network. In particular, it is an object of the present invention to significantly reduce the complexity and size of remote monitoring systems, and to dramatically simplify the installation and maintenance of remote control and monitoring systems. It is another object of the invention to minimize the number of points of failure in remote control and monitoring systems. Yet another object of the invention is to provide an inexpensive generic and versatile apparatus that enables any device to be remotely monitored and controlled, without requiring expensive customized hardware. Another object of the invention is to provide such an apparatus that permits easy software customization. Other objects and advantages of the invention will become evident from consideration of the following description and associated drawings.
The present invention provides a method and apparatus for remotely monitoring and controlling devices or equipment over a computer network. In contrast with prior solutions that require large and expensive web server machines, the present invention requires only a single, inexpensive integrated circuit chip. Remarkably, this single network interface chip provides all the networking hardware, networking software and device interface elements necessary for network connectivity and web-based or network-based management of any device. It also enables monitoring and controlling of any device, regardless of its available processing power, code space, or interface pins. Even devices without a CPU or microcontroller are supported.
Because all the required functionality of a large web server machine is included in the single network interface chip, the present invention provides remote monitoring and control of devices at a fraction of the cost of prior solutions. As a result, whereas the cost and complexity of prior remote access and control systems limited their use to large scale industrial applications and expensive equipment, the present invention suddenly enables virtually any device to be economically networked so that it may be remotely monitored and controlled. Such devices include, but are not limited to, home appliances, vending machines. digital cameras, security systems, copiers, printers, fax machines, point-of-sale terminals, automobiles, and robots.
The network interface chip of the present invention is a generic and versatile chip that is able to connect to any device using serial, parallel, or customized I/O. Although the chip is generic, it can easily be customized for a particular device by storing programs and/or configuration codes in a portion of its on-chip memory. Alternatively, or in addition, additional customized programs and/or configuration codes may be stored in a second chip.
In contrast to prior art embedded chips that require an expensive intermediary web server machine in order to connect the device to the internet, the network interface chip of the present invention provides complete internet enablement without any expensive web server machine. The chip alone is a fully functional internet node, including a web server, and supporting various protocols and hardware connections. Specifically, this single chip provides integrated ethernet connections, provides wired or wireless modem connections, fully supports standard IP-based network protocols such as TCP/IP, PPP, UDP, DHCP, SMTP, FTP and HTTP. The chip also supports Java and standard network security techniques. Because this single chip is the only link between the remote device and the Internet, it provides an extremely simple and inexpensive solution to remote monitoring and control. The simplicity of this direct interface has the additionally important benefit that the number of possible points of failure between the device and the network is minimized. Prior art solutions, in contrast, typically have multiple intermediary devices, such as gateway servers in combination with device interface hardware.
In one aspect of the invention a single integrated circuit chip is provided for interfacing device control circuitry of a device to a client machine via a computer network. The chip comprises the following components: an internal data bus; a central processing unit connected to the internal data bus; an internal memory connected to the internal data bus; a device interface connected to the internal data bus, wherein the device interface comprises circuit blocks for communicating digital information between the integrated circuit and the device control circuitry; and a network interface connected to the internal data bus, wherein the network interface comprises circuit blocks for communicating digital information between the integrated circuit and the computer network. The chip comprises instructions and/or hardware for implementing complete internet protocol functionality on the network; translating information between network protocol formats and a format of the device; transferring information between the network and the device control circuitry; and sending customized software to the client machine over the network, wherein the software is executable on the client machine, and wherein the software enables the client machine to generate device control signals and to receive device status information.
In a preferred embodiment of the invention, the memory contains customized device network address information and customized device interface port protocol information. The chip of this embodiment further comprises an external memory interface circuit block, wherein the internal memory comprises instructions for reading the customized software from an external memory via the external memory interface circuit block. The software comprises bytecode instructions (e.g., Java bytecode applet) executable by an interpreter running on the client machine (e.g., a Web browser with a Java Virtual Machine), wherein the bytecode instructions are customized to characteristics of the device, and wherein the bytecode instructions generate on the client machine a virtual interface with the device. The chip of this embodiment is also characterized in that the device interface comprises an asynchronous serial port, a synchronous serial port, a parallel CPU bus interface, and a programmable input/output port. The network interface comprises an ethernet MAC and an asynchronous serial port. The chip comprises instructions and/or hardware for implementing the network protocols and functionality of TCP/IP, UDP/IP, FTP, SMTP, and HTTP. The chip also comprises instructions and/or hardware for implementing an application programming interface (API) with the device. These and other features are implemented in a single integrated circuit chip providing inexpensive, compact, powerful, and versatile interfacing of a large variety of devices to computer networks. These and other advantages of the invention will become apparent from the following description and accompanying drawings.